In one conventional file system, one or more workstation terminals access data through a host computer system. The data may be stored on one or more disk drives in a storage array, and the host system processes read/write commands from a workstation and accesses an appropriate disk in response to those commands. In a large file sharing system environment, several users may have access to disk data on a single terminal or many terminals supporting many users may be connected to the host system. The host system may include cache memory which can store data from one or more disks. Caching algorithms may be used in conjunction with cache memory in an effort to accurately populate cache memory with likely data that may be accessed on one or more disks by one or more users. However, conventional file systems do not populate cache memory with disk data that reflects actual use and/or user data. Additionally, conventional data read requests require, at minimum, device layout information to be read from the disk and corresponding disk activity to determine the location of the requested data. Therefore, conventional file systems and conventional caching algorithms are incapable of populating cache memory based on historical data access information. Also, conventional file systems and conventional caching algorithms are incapable of caching device layout information so that data location information can be determined with minimal disk activity.
Although the following Detailed Description will proceed with reference being made to illustrative embodiments, many alternatives, modifications, and variations thereof will be apparent to those skilled in the art. Accordingly, it is intended that the claimed subject matter be viewed broadly, and be defined only as set forth in the accompanying claims.